package com.xh.bussiness.resource.bean.request;

import java.util.List;

import com.xh.core.bean.BaseRequestBean;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * <p>
 * 资料 查询bean
 * </p>
 *
 * @author JQM
 * @since 2019-08-27
 */
@Data
public class MaterialRequest extends BaseRequestBean {


    @ApiModelProperty(value = "id", notes = "id", dataType = "String", required = false)
    private String id;

	@ApiModelProperty(value = "文件名", notes = "文件名", dataType = "String", required = false)
	private String fileName;
	
	/**
     * 年段
     */
	@ApiModelProperty(value = "年段", notes = "年段", dataType = "String[]", required = false)
    private List<String> gradeRange;

    /**
     * 年级
     */
	@ApiModelProperty(value = "年级", notes = "年级", dataType = "String[]", required = false)
    private List<String> grade;

    /**
     * 学科
     */
	@ApiModelProperty(value = "学科", notes = "学科", dataType = "String[]", required = false)
    private List<String> subjects;

    /**
     * 学科
     */
    @ApiModelProperty(value = "学科", notes = "学科", dataType = "String", required = false)
    private String subject;

    /**
     * 版本
     */
	@ApiModelProperty(value = "版本", notes = "版本", dataType = "String[]", required = false)
    private List<String> version;

    /**
     * 年份
     */
	@ApiModelProperty(value = "年份", notes = "年份", dataType = "String[]", required = false)
    private List<String> year;

    /**
     * 省
     */
	@ApiModelProperty(value = "省", notes = "省", dataType = "String[]", required = false)
    private List<String> proviceId;

    /**
     * 市
     */
	@ApiModelProperty(value = "市", notes = "市", dataType = "String[]", required = false)
    private List<String> cityId;

    /**
     * 区
     */
	@ApiModelProperty(value = "区", notes = "区", dataType = "String[]", required = false)
    private List<String> districtId;

    /**
     * 难度
     */
	@ApiModelProperty(value = "难度", notes = "难度", dataType = "String[]", required = false)
    private List<String> difficult;

    /**
     * 课程类型
     */
	@ApiModelProperty(value = "课程类型", notes = "课程类型", dataType = "String[]", required = false)
    private List<String> courseType;
    /**
     * 是否公共（0否，1是）
     */
    @ApiModelProperty(value = "是否公共（0否，1是）", notes = "是否公共（0否，1是）", dataType = "Integer", required = false)
    private Integer isPublic;
    /**
     * 章节Id
     */
    @ApiModelProperty(value = "章节Id", notes = "章节Id", dataType = "String[]", required = false)
    private List<String> chapterId;
    /**
     * 课本ID
     */
    @ApiModelProperty(value = "课本Id", notes = "课本Id", dataType = "String[]", required = false)
    private String bookId;
    /**
     * 资料类型
     */
    @ApiModelProperty(value = "资料类型", notes = "资料类型", dataType = "String[]", required = false)
    private List<String> ext;

    /**
     * 用户ID
     */
    @ApiModelProperty(value = "用户id", notes = "用户id", dataType = "String", required = false)
    private String creatorId;

    /**
     * 类型：1课件  2 讲义教案  3 说课视频  4 其他 5 标准教案
     */
    @ApiModelProperty(value = "类型：1课件  2 讲义教案  3 说课视频  4 其他 5 标准教案", notes = "类型：1课件  2 讲义教案  3 说课视频  4 其他 5 标准教案", dataType = "String", required = false)
    private Integer type;

    /**
     * 排序（0：创建时间；1：试题难度；2：引用次数）
     */
    @ApiModelProperty(value = "排序", notes = "排序（1：文件名；2：上传时间；3：引用次数）", dataType = "String")
    private Integer order;
    /**
     * 升降（0：升序；1：降序）
     */
    @ApiModelProperty(value = "排序方式", notes = "升降（0：升序；1：降序）", dataType = "String")
    private Integer orderType;

    /**
     * 由于分页查询试题参数格式有问题 单独声明到该dto
     */
    private long current;
    private long size;
}
